package com.woniu.entity;

import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @description: 用于封装渠道模块请求数据的实体类
 * @author Dante
 * @date: 2022/9/20 19:18
 */
@ApiModel(description="资金资产渠道通用实体类")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class CapitalChannelEntity {
    @ApiModelProperty(value="渠道编号",dataType="Integer")
    @Excel(name = "资金渠道编号")
    private Integer id;

    @ApiModelProperty(value="渠道类型",dataType="String")
    private String channelType;

    @ApiModelProperty(value="渠道名称",dataType="String")
    @Excel(name = "渠道名称(简称)")
    private String channelName;

    @ApiModelProperty(value="渠道状态",dataType="String")
    @Excel(name = "状态",readConverterExp="n=未启用,b=已禁用,y=已启用")
    private String channelStatus;

    @ApiModelProperty(value="渠道联系人",dataType="String")
    @Excel(name = "联系人")
    private String linkman;

    @ApiModelProperty(value="渠道联系手机号",dataType="Long")
    @Excel(name = "联系手机")
    private Long phoneNum;

    @ApiModelProperty(value="渠道业务类型",dataType="String")
    @Excel(name = "业务类型")
    private String serviceType;

    @ApiModelProperty(value="渠道创建时间",dataType="Date")
    @Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @ApiModelProperty(value="渠道简称",dataType="String")
    private String channelSimpleName;

    @ApiModelProperty(value="更新人",dataType="String")
    private String updatePerson;

    @ApiModelProperty(value="更新时间",dataType="Date")
    private Date updateTime;

    @ApiModelProperty(value="公司名称",dataType="String")
    private String companyName;

    @ApiModelProperty(value="收款人姓名",dataType="String")
    private String beneficiaryName;

    @ApiModelProperty(value="收款人银行卡号",dataType="String")
    private String beneficiaryCardId;

    @ApiModelProperty(value="开卡银行",dataType="String")
    private String beneficiaryBank;

    @ApiModelProperty(value="开卡行支行",dataType="String")
    private String beneficiarySubBank;

    @ApiModelProperty(value="预留手机号",dataType="Long")
    private Long bankcardPhone;

    @ApiModelProperty(value="贷款期限",dataType="Integer")
    private Integer loanDeadline;

    @ApiModelProperty(value="未还款本金最大值比例",dataType="String")
    private String maxRatio;

    @ApiModelProperty(value="未还款本金提现金额比例",dataType="String")
    private String drawCashRatio;

    @ApiModelProperty(value="每日放款订单数",dataType="Integer")
    private Integer lendingNum;

    @ApiModelProperty(value="是否是资产",dataType="String")
    private String isAsset;

    @ApiModelProperty(value="渲染到页面创建人姓名",dataType="String")
    @Excel(name = "创建人")
    private String nickName;

    @ApiModelProperty(value="产品名称",dataType="String")
    @Excel(name = "已关联产品")
    private String productionName;

    @ApiModelProperty(value="创建人",dataType="SysAdminVO")
    private SysAdminVO admin;

    @ApiModelProperty(value="产品id",dataType="Integer")
    private Integer productId;

    @ApiModelProperty(value="产品id",dataType="Integer")
    private Integer productionId;

    @ApiModelProperty(value="产品集合",dataType="List<EnhancedProduction>")
    private List<EnhancedProduction> products = new ArrayList<>();
}
